Transformation: 180 Linear + Nonlinear

Either drag the blue point to move the mechanism or give the "Speed" slider (if visible) a non-zero value.  Note that you may need to Right-click on the blue point and select "Animation on" to reset it if it does not respond to the "Speed" slider at first.

OA

L_2

4.L_1

Locus

Geometric Property

Path

A_1 = (-7.088078384372917, 0.22602193923774205)
B_1 = (-7.028078384372917, 3.606021939237744)
C_1 = (-4.208078384372917, 3.546021939237743)
D = (-4.328078384372917, 2.626021939237742)
E = (-6.076582077199119, 2.804597621934816)
F = (-6.060849306530037, 2.004673008498296)
G = (-5.1080783843729165, 2.126021939237742)
H = (-5.068078384372917, 1.4060219392377422)
I = (-6.248078384372917, 1.3860219392377422)
J = (-6.308078384372917, -0.07397806076225821)
poly1, a, b, c, d_1, e, f, g, h, i, j = Polygon(A_1, B_1, C_1, D, E, F, G, H, I, J)
P = Point(poly1)
L = Intersect(xAxis, yAxis)
L_1 = 1.5 (slider from 0 to 5, step 0.1)
L_2 = 6 (slider from 0 to 20, step 0.1)
BP' = 2 (slider from (-L_2) / 6 + 0.0010 to L_2 / 1.5 - 0.0010, step 0.01)
p = Circle(P, L_1)
q = Circle(L, 2 * L_1)
r = Circle(P, L_2)
d = 1.0E-4 (slider from -L_1 + 1.0E-4 to L_1 - 1.0E-4, step 0.1)
s = Circle(L, 2 * (L_1 + d))
t = Circle(L, 2 * (L_1 - d))
M = Intersect(r, s, 2)
l = Ray(M, L)
N = Intersect(t, l, 2)
m = Segment(M, N)
n = Segment(P, M)
a_1 = Line(P, m)
b_1 = Line(N, n)
O_1 = Intersect(a_1, b_1)
c_1 = Segment(P, O_1)
P' = Dilate(N, BP', O_1)
e_1 = Segment(O_1, N)
f_1 = Segment(N, P')
loc1 = Locus(P', P)
o = false
P_1 = Intersect(n, c_1)
B = Intersect(c_1, e_1)
A = Intersect(n, m)
C = Intersect(m, e_1)
N'_1 = Dilate(N, BP', O_1)
O = Intersect(yAxis, xAxis)
g_1 = Line(P, O)
u = false
i_1 = OrthogonalLine(O, h_1)
U = Intersect(n, c_1)
Speed = 0 (slider from -5 to 5, step 0.1)
v = false
AO_{Dist} = Distance(A, O)
BP'k: L_2 * BP'
text2: "BP' = " + BP'k + ""
text1: "OA = " + AO_{Dist} + ""